<?php
class Annonce
{
    protected $page_name = null;
    protected $annonce_id = null;    
    private $search = false;
    private $pagination = false;
    public $annonce;
    private $condition;

 
    /**
     * @desc Compte le nombre de fois que l annonce a ete vue
     * @param $aid string id de l annonce
     * @return void
     * */
    function setCompteurIncrement($annonce_id)
    {
        $GLOBALS['db']->execute("UPDATE immo_annonce SET nb_vue = nb_vue + 1 WHERE id = '". $annonce_id ."'");  
    }
    
    /**
     * @desc : permet de connaitre le nombre de photo de l annonce
     * @param $aid string : id de l annonce
     * @return nombre de photo
     * */
    public function getNbPhoto($annonce_id)
    {
        return $GLOBALS['db']->sql_nbresultat(null, "SELECT COUNT(id) FROM immo_annonce_photo WHERE annonce = '" . intval($annonce_id) ."' ");
    }
    
    /**
     * @desc Enregistre les criteres de recherche dans la base
     * @return void
     * */
    function log_search()
    {
        $agence_id = retrieve('POST', 'agence');
        $type = retrieve('POST','type');
        $prix = retrieve('POST', 'prix');
        $departement = retrieve('POST', 'departement');
        $secteur = retrieve('POST','secteur');
        
        if($agence_id != '' || $type != '' || $prix != '' || $departement != '' || $secteur != '')
        {
            $Critere = array(
            'agence'	=>	$agence_id,
            'type'	=>	$type,
            'prix'	=>	$prix,
            'departement'	=>	$departement,
            'secteur'	=>	$secteur);    

            $GLOBALS['db']->execute("INSERT INTO immo_annonce_search (criteres, date_search) VALUES ('". addslashes(serialize($Critere)) ."', '". date('Y-m-d') ."')");
        }        
    }
    
    function ConstructCondition($condition)
    {
        global $lang;
        
        if(!is_array($condition))
            return $QueryCondition;
        
        $QueryCondition = null;
        $nb_condition = 0;
	
    	// Traitement cas particulier
    	if($condition['prix'] != '')
    	   $condition['prix'] = Annonce::getPrixQuery($condition['prix']);       		

		foreach($condition as $key => $value)
		{
			if($value != '')
			{
			     if($key == 'prix')
                    $QueryCondition .= $key .' ' . $value . ' AND ';
                 elseif($key == 'ta.ville')
                    $QueryCondition .=  $key . " LIKE '%" . $value ."%' AND ";
                 else
                    $QueryCondition .=  $key .' = \'' . $value .'\' AND ';
			}
		}
        
        if( !is_null($QueryCondition))
        {
            $QueryCondition = " WHERE " . $QueryCondition;                          // Ajout du WHERE
            $QueryCondition = substr_replace($QueryCondition, '', -4, -1);          // Supression du dernier AND
        }
        else
            $QueryCondition = '';
            
		return $QueryCondition;
    }
    
    function getPrixQuery($prix)
    {
        switch($prix)
		{
			case '1':
			$c = 'BETWEEN \'0\' AND \'100000\'';
			break;
			
			case '2':
			$c = 'BETWEEN \'100000\' AND \'200000\'';
			break;
			
			case '3':
			$c = 'BETWEEN \'200000\' AND \'999999999\'';
			break;
			
			default:
			$c = '';
			break;
		}
        
        return $c;   
    }
    
	/**
	*	Construit le rendu photo pour le detail des annonces
	*	par default cader de legerement plus grand que 800px donc photo taille 200px X 150 px;
	***/
	function GetPhotoForDetail($annonce_id)
	{
		$count = 1;
        
		$t_image = '<table style="margin:auto;"><tr>';
        
		$Sql = $GLOBALS['db']->query("SELECT photo FROM immo_annonce_photo WHERE annonce = '". $annonce_id ."'");
        
        $photos = $GLOBALS['db']->fetchAll($Sql);
        
        foreach($photos as $photo)
        {
            if( is_file(IMMOPHP_ROOT_PATH . 'upload/annonces/' . $annonce_id . '/'. $photo['photo']) )
            {
                $count++;
                $t_image .= '<td>
                    <a href="upload/annonces/'. $annonce_id .'/'. $photo['photo'] .'" rel="lightbox" title="">
                        <img src="upload/annonces/'. $annonce_id .'/'. $photo['photo'] .'" alt="" style="border:none; height:150px; width:200px;" />
                    </a>
                <td>';
            }
            
            if($count == 4)
            {
                $t_image .='</tr><tr>';      // Fermeture de la ligne
				$count=1;                    // Remise a 1 du compteur
            }
        }
        
        $t_image .= '</tr></table>';        // Fermeture ligne et tableau
    
		return $t_image;
	}

}